// 同时发送异步代码的次数
let ajaxTimes = 0;
const request = (parmas) => {
    // 当有地方调用请求方法的时候，就增加全局变量，用于判断有几个请求了
    ajaxTimes++;
    // 显示加载中loading效果
    wx.showLoading({
        title: "加载中",
        mask: true  //开启蒙版遮罩
    });
    let myHeader = { ...parmas.header };
    if (parmas.url.includes("/neddToken/")) {
        // 往myHeader这个对象里插入键值对 带上Storage中存储的token
        myHeader["Authorization"] = wx.getStorageSync("token");
    }
		// 基础url
		let baseUrl = '';
		if(parmas.url.includes('/local/')){
			parmas.url = parmas.url.slice(6);
			baseUrl = 'http://localhost:3000';
		}else {
			baseUrl = "https://wwyy.wzhxlx.com/wwyy"
		}
    return new Promise((resolve, reject) => {
        wx.request({
            ...parmas,
						url: baseUrl + parmas.url,
						// method:parmas.method,
            header: { 'content-type': 'application/json', ...myHeader },
            success: (result) => {
                // 请求成功，就将成功的数据返回出去
                if(parmas.url.includes('/local/')){
									resolve(result)
								}else {
									resolve(result.data)
								}
            },
            fail: (err) => {
                reject(err)
            },
            // 不管请求成功还是失败，都会触发
            complete: () => {
                ajaxTimes--;
                // 此时就可以关闭loading效果了
                if (ajaxTimes === 0) {
                    //  关闭正在等待loading效果
                    wx.hideLoading();
                }
            }
        });
 
    })
};
export default request;
 